/************************************************************
 *                                                          *
 * Copyright (c) 2001-2012 McObject LLC. All Right Reserved.*
 *                                                          *
 ************************************************************/

#ifndef _MCO_EWS_CONFIG_H
#define _MCO_EWS_CONFIG_H

/*
 *
 *	Debug level
 *
 */
//#define MCO_TRANSPORT_LAYER_DEBUG
//#define MCO_BUFFERED_TRANSPORT_LAYER_DEBUG
//#define MCO_HTTP_LAYER_DEBUG

/*
 *
 *	Memory management
 *
 */
#define MCO_MEMORY_MANAGEMENT_LIBC
//#define MCO_MEMORY_MANAGEMENT_CUSTOM

/*
 *
 *	Transport layer implementation 
 *
 */
#define MCO_TRANSPORT_LAYER_TCPIP
//#define MCO_TRANSPORT_LAYER_CUSTOM

/*
 *
 *	Buffered layer
 *
 */
#define MCO_HTTP_BUFFERED_CONNECTIONS

/*
 *
 *	Inprocess CGI buffering strategy
 *
 */
#define MCO_HTTP_CGI_PARTIAL_BUFFERING
//#define MCO_HTTP_CGI_FULL_BUFFERING

/*
 *
 *	Runtime behavior
 *
 */
#define MCO_TRANSPORT_LAYER_EXT_INFO
#define MCO_HTTP_TOOLS
#define MCO_HTTP_10
#define MCO_HTTP_EXTRA_HEADER
#define MCO_HTTP_SEND_ERRORS

#ifndef MCO_HTTP_OVERRIDE_CONFIG

//#define MCO_HTTP_SESSION_SUPPORT
//#define MCO_HTTP_BASIC_AUTH

/*
 *
 *	Security implementation
 *
 */
#define MCO_SECURITY_NONE
//#define MCO_SECURITY_MATRIXSSL
//#define MCO_SECURITY_CUSTOM

#endif /*MCO_HTTP_OVERRIDE_CONFIG*/

/*
 *
 *	Runtime limitations
 *
 */
#define MCO_HTTP_CGI_BUFFER_SIZE                 64*1024
#define MCO_HTTP_HEADER_SIZE_LIMIT               1024
#define MCO_HTTP_SESSION_IDENTIFIER_SIZE         16
#define MCO_HTTP_BACKLOG                         SOMAXCONN
#define MCO_TRANSPORT_LAYER_LINGER_TIMEOUT       10
#define MCO_HTTP_SECURED_CONNECTIONS_IO_BUFFER_SIZE 1024*16

#endif // _MCO_EWS_CONFIG_H
